package com.wanhe.shoppingcart.manager;

/**
 * Created by XieZaiWei on 2017/7/4.
 * 购物车项接口
 */

public interface ICartItem {

	/**
	 * 中间件的购物车ID
	 *
	 * @author 陈德基
	 * create at 2017/3/11 2:13
	 */
	String getUUID();

	/**
	 * 获得菜品的guid
	 */
	String getDishGuid();

	String getName();

	/**
	 * 用于标示一个菜品的唯一标识，不管该菜品中的数据如何搭配
	 *
	 * @author 陈德基
	 * created at 2016/8/26 14:58
	 */
	String getSignID();

	/**
	 * 表示一个菜品的类型id
	 *
	 * @author 陈德基
	 * created at 2016/8/26 14:59
	 */
	String getTypeId();

	/**
	 * 判断是否为特殊菜品
	 *
	 * @author 陈德基
	 * created at 2016/8/26 15:00
	 */
	boolean isSpecial();

	/**
	 * 数量
	 *
	 * @author 陈德基
	 * created at 2016/8/26 15:00
	 */
	int getCount();

	/**
	 * 菜品的普通价格
	 *
	 * @author 陈德基
	 * created at 2016/8/26 15:00
	 */
	double getPrice();

	/**
	 * 菜品的会员价格
	 *
	 * @author 陈德基
	 * created at 2016/8/26 15:00
	 */
	double getVIPPrice();

	/**
	 * 设置数量
	 *
	 * @author 陈德基
	 * created at 2016/8/26 15:02
	 */
	void setCount(int count);

	void setAddTime(long timeStamp);

	long getAddTime();

	/**
	 * 判断购物项中的项目是否售空
	 * 将要添加的数量
	 */
	boolean isSellOut(int count);

}
